<script>

//1、
function fn01(string, index) {
 return string[index]

}
var s01 = "Java Exercises!"
console.log('索引0的字母是', fn01(s01, 0))
console.log('索引10的字母是', fn01(s01, 10))

//2、
function fn02(string, index) {
    return `${string[index]},${string.charCodeAt(index)}`
}

var s02 = 'hello'
console.log(fn02(s02, 0)) // h, 104
console.log(fn02(s02, 1)) // e, 101

//3、反转字符串
// 倒着循环
// 1字符串->数组 2数组反转（reverse）3join
function reverseString(someString) {
 return `${someString.split("").reverse().join("")}`
}
console.log(reverseString("I am a string")) // gnirts a ma I

//4、 判断是否是回文（正反字母序列一样）
function isPalindrome(someString) {


}
console.log(isPalindrome("racecar")) // true
console.log(isPalindrome("apple")) // false

// 5、删除指定字符
function removeCharacters(text, chars) {
return `${text.replaceAll("a","").replace("x","")}`
}
console.log(removeCharacters("I am an example string", ["a", "x"])) // "I m n emple string"

//6、 找到出现次数最多的字符
function mostCommonCharacter(someString){

}

console.log(mostCommonCharacter("abcddefg")) // d
console.log(mostCommonCharacter("heggbdeff")) // f

//7、 找到重复出现过的字符
function findDuplicates(someString, repeatTimes){
// return `${someString[repeatTimes].indexOf==-1}`
}

console.log(findDuplicates("abcddef", 2)) // [d]
console.log(findDuplicates("tfghhhplffzaaa", 3)) // [h, a]

// 8 、指定位置是否是元音（a e i o u）字母
function vowelOrConsonant(someString, position) {
let arr=['a','e','i','o','u'],j;
for(var i=0;i<arr.length;i++){
    if(arr[i]==someString[position]){
        j='consonant';
        break;
    }else{
        j='vowel';
    }
}
return j;

}

console.log(vowelOrConsonant("hello", 4)) // consonant
console.log(vowelOrConsonant("cat", 2)) // vowel


//9、 排序字符
// sort(function(a,b) {return a-b})
function sortString(someString) {
let arr=someString.split("");
arr.sort(function(a,b){
    return a>b?1:a<b?-1:0;
})
return arr.join("");
}

console.log(sortString("bacd")) // "abcd"
console.log(sortString("axedzpq")) // "adepqxz"

//10、 判断字符串中的字符顺序是否是字母表顺序
function isOrderedAlphabetically(someString) {
let arr=someString.split("");
arr.sort(function(a,b){
    return a>b?1:a<b?-1:0;
  })
  return arr.every(function(v,i){
      return v==someString[i];
  })
}

console.log(isOrderedAlphabetically("abbcddeikl")) // true
console.log(isOrderedAlphabetically("cat")) // false


//11、 将文本中的每个单词的首字母大写
function capitalizeFirstLetterOfEachWord(someString){
let arr=someString.split(" ")
return arr.map(function(v,i){
 return   v[0].toUpperCase()+v.slice(1).toLowerCase()
}).join(" ")
}

console.log(capitalizeFirstLetterOfEachWord("i am a string")) // I Am A String

//12、 判断一个字符串中是否包含另外一个字符串
function stringContains(someString, stringToSearchFor){


}

console.log(stringContains("catapult", "cat")) // true
console.log(stringContains("camp", "can")) // false


//13、 打乱字符串（将字母顺序变为乱序）
function shuffle(someString){
let arr=someString.split("");
return arr.sort(function(){
    return 0.5-Math.random()
}).join("")
}

console.log(shuffle("hello")) // lelho


//14、 将名人名言（'"名言" - 人名'）变成特定格式[名言, 人名]的形式
function extractQuote(quote) {
return quote.split("-")
}

var quote = '"The unexamined life is not worth living." - Socrates'
console.log(extractQuote(quote)) // ["The unexamined life is not worth living.", "Socrates"]
var quote2 = '"我没有说过这句话。" - 鲁迅'
console.log(extractQuote(quote2)) // ["我没有说过这句话。", "鲁迅"]

</script>